package woshiheima13;

import java.util.Arrays;

/**
 * 选择排序(遍历所有的数然后从第一个数后面去找最小的数并记录他的下标，如果比第一个数小就交换)
 */
public class SelectSort {
    public static void main(String[] args) {
        int [] arr = new int []{3,89,72,46,5,2,99};
        System.out.println(Arrays.toString(arr));
        selectSort(arr);
        System.out.println(Arrays.toString(arr));
    }
    public static void selectSort(int[] arr){
        //遍历所有的数
        for (int i =0;i<arr.length;i++){
            int min=i;
            for (int j=i+1;j<arr.length;j++){// 选最小的记录
                if (arr[min]>arr[j]){
                    ////记下目前找到的最小值所在的位置
                    min=j;
                }

            }
            //在内层循环结束，也就是找到本轮循环的最小的数以后，再进行交换
            if (i!=min){
                int temp=arr[i];
                arr[i]=arr[min];;
                arr[min]=temp;
            }

        }
    }
}
